package chapter2;

/**
 * i++ 与 ++i 正正的区别
 * 前置++ 是将变量值+1 使用增值后的变量进行运算
 * 后置++ 是将变量赋值给一个临时变量  接下来对变量的值+1  然后使用那个临时变量进行运算
 *
 *前置++直接将变量的值+1，然后再使用，，，后置++是先将变量的值压入栈（保存起来），然后变量+1，之后使用栈内的值
 *
 */
public class PreAndPostPlus {
    public static void main(String[] args) {
        int i=15;
        prePlusJ(i);
        prePlusI(i);
        postPlusJ(i);
        postPlusI(i);
    }
    public static void prePlusJ(int i){
        int j = ++i;//变量值+1的值参与运算
        System.out.println("++i对j赋值：");
        System.out.println("i="+i);
        System.out.println("j="+j);
    }
    public static void prePlusI(int i){
        i=++i;
        System.out.println("++i对i赋值：");
        System.out.println("i="+i);
    }
    public static void postPlusJ(int i){
        int j=i++;//先使用i的值，然后再在将该值加1
        System.out.println("i++对j赋值：");
        System.out.println("i="+i);
        System.out.println("j="+j);
    }
    public static void postPlusI(int i){
        i=i++;
        System.out.println("i++对i赋值：");
        System.out.println("i="+i);
    }
}
